package com.sinosoft.ebusiness.domain.elementManage;
// 采用工具 Hibernate Tools 3.2.4.GA (sinosoft version) 生成，请勿手工修改。

import java.math.BigDecimal;
import javax.persistence.AttributeOverride;
import javax.persistence.AttributeOverrides;
import javax.persistence.Column;
import javax.persistence.EmbeddedId;
import javax.persistence.Entity;
import javax.persistence.FetchType;
import javax.persistence.JoinColumn;
import javax.persistence.ManyToOne;
import javax.persistence.Table;

import com.fasterxml.jackson.annotation.JsonBackReference;
import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
import com.sinosoft.ebusiness.domain.elementManage.GeProductRationItemkindId;
import com.sinosoft.ebusiness.domain.elementManage.GeProductRationSection;

/**
 * POJO类GeProductRationItemkind
 */
@Entity
@Table(name = "GE_PRODUCT_RATION_ITEMKIND")
@JsonIgnoreProperties(value = {"hibernateLazyInitializer", "handler"})
public class GeProductRationItemkind implements java.io.Serializable {

	/**
	 * 
	 */
	private static final long serialVersionUID = -5876303326303325998L;

	/** 属性ID */
	private GeProductRationItemkindId id;

	/** 属性geProductRationSection */
	private GeProductRationSection geProductRationSection;

	/** 属性保险金额/赔偿限额 */
	private BigDecimal amount;

	/** 属性显示保额 */
	private String showAmount;
	
	/** 属性fixedamount */
	private String fixedamount;

	/** 属性amounttype */
	private String amounttype;

	/** 属性amountscop */
	private String amountscop;

	/** 属性免赔额(%) */
	private String deductible;

	/** 属性deductibleamount */
	private String deductibleamount;

	/** 属性isselected */
	private String isselected;

	/** 属性保费/储金 */
	private BigDecimal premium;
	
	/** 属性显示保费 */
	private String showPremium;

	/** 属性费率 */
	private BigDecimal rate;
	
	/** 属性备注 */
	private String  remark;

	/**
	 * 类GeProductRationItemkind的默认构造方法
	 */
	public GeProductRationItemkind() {
	}

	/**
	 * 属性ID的getter方法
	 */
	@EmbeddedId
	@AttributeOverrides({
			@AttributeOverride(name = "kindCode", column = @Column(name = "KINDCODE")),
			@AttributeOverride(name = "riskCode", column = @Column(name = "RISKCODE")),
			@AttributeOverride(name = "serialno", column = @Column(name = "serialno")),
			@AttributeOverride(name = "geProductRationSection.combocode", column = @Column(name = "COMBOCODE"))
			 })
	public GeProductRationItemkindId getId() {
		return this.id;
	}

	/**
	 * 属性ID的setter方法
	 */
	public void setId(GeProductRationItemkindId id) {
		this.id = id;
	}

	/**
	 * 属性geProductRationSection的getter方法
	 */
	@ManyToOne(fetch = FetchType.LAZY)
	@JoinColumn(name = "COMBOCODE",insertable=false,nullable=false,updatable=false)
	@JsonBackReference
	public GeProductRationSection getGeProductRationSection() {
		return this.geProductRationSection;
	}

	/**
	 * 属性geProductRationSection的setter方法
	 */
	public void setGeProductRationSection(
			GeProductRationSection geProductRationSection) {
		this.geProductRationSection = geProductRationSection;
	}

	/**
	 * 属性保险金额/赔偿限额的getter方法
	 */

	@Column(name = "AMOUNT")
	public BigDecimal getAmount() {
		return this.amount;
	}

	/**
	 * 属性保险金额/赔偿限额的setter方法
	 */
	public void setAmount(BigDecimal amount) {
		this.amount = amount;
	}

	/**
	 * 属性fixedamount的getter方法
	 */

	@Column(name = "FIXEDAMOUNT")
	public String getFixedamount() {
		return this.fixedamount;
	}

	/**
	 * 属性fixedamount的setter方法
	 */
	public void setFixedamount(String fixedamount) {
		this.fixedamount = fixedamount;
	}

	/**
	 * 属性amounttype的getter方法
	 */

	@Column(name = "AMOUNTTYPE")
	public String getAmounttype() {
		return this.amounttype;
	}

	/**
	 * 属性amounttype的setter方法
	 */
	public void setAmounttype(String amounttype) {
		this.amounttype = amounttype;
	}

	/**
	 * 属性amountscop的getter方法
	 */

	@Column(name = "AMOUNTSCOP")
	public String getAmountscop() {
		return this.amountscop;
	}

	/**
	 * 属性amountscop的setter方法
	 */
	public void setAmountscop(String amountscop) {
		this.amountscop = amountscop;
	}

	/**
	 * 属性免赔额(%)的getter方法
	 */

	@Column(name = "DEDUCTIBLE")
	public String getDeductible() {
		return this.deductible;
	}

	/**
	 * 属性免赔额(%)的setter方法
	 */
	public void setDeductible(String deductible) {
		this.deductible = deductible;
	}

	/**
	 * 属性deductibleamount的getter方法
	 */

	@Column(name = "DEDUCTIBLEAMOUNT")
	public String getDeductibleamount() {
		return this.deductibleamount;
	}

	/**
	 * 属性deductibleamount的setter方法
	 */
	public void setDeductibleamount(String deductibleamount) {
		this.deductibleamount = deductibleamount;
	}

	/**
	 * 属性isselected的getter方法
	 */

	@Column(name = "ISSELECTED")
	public String getIsselected() {
		return this.isselected;
	}

	/**
	 * 属性isselected的setter方法
	 */
	public void setIsselected(String isselected) {
		this.isselected = isselected;
	}

	/**
	 * 属性保费/储金的getter方法
	 */

	@Column(name = "PREMIUM")
	public BigDecimal getPremium() {
		return this.premium;
	}

	/**
	 * 属性保费/储金的setter方法
	 */
	public void setPremium(BigDecimal premium) {
		this.premium = premium;
	}

	/**
	 * 属性费率的getter方法
	 */

	@Column(name = "RATE")
	public BigDecimal getRate() {
		return this.rate;
	}

	/**
	 * 属性费率的setter方法
	 */
	public void setRate(BigDecimal rate) {
		this.rate = rate;
	}

	@Column(name = "SHOWAMOUNT")
	public String getShowAmount() {
		return showAmount;
	}

	public void setShowAmount(String showAmount) {
		this.showAmount = showAmount;
	}
	@Column(name = "SHOWPREMIUM")
	public String getShowPremium() {
		return showPremium;
	}

	public void setShowPremium(String showPremium) {
		this.showPremium = showPremium;
	}
	
	@Column(name = "REMARK")
	public String getRemark() {
		return remark;
	}

	public void setRemark(String remark) {
		this.remark = remark;
	}
	
	
	

}
